home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 1.iso / ARGONET / PD / MATHS / RLAB / RLAB125.ZIP / !RLaB / examples / house_qr < prev    next >
Text File  |  1994-10-22  |  521b  |  27 lines

  1. // house_qr.r
  2. // Given A, with M >= N, the following function finds Householder
  3. // matrices H1,...Hn, such that if Q = H1*...Hn, then Q'*A = R is
  4. // upper triangular.
  5.  
  6. // House.qr returns a MxN matrix, with the upper triangular part 
  7. // containing [R]
  8.  
  9. house_qr = function ( A )
  10. {
  11.   local (A)
  12.  
  13.   m = A.nr; n = A.nc;
  14.   v = zeros(m,1);
  15.  
  16.   for(j in 1:n)
  17.   {
  18.     v[j:m] = house_v( A[j:m;j] );
  19.     A[j:m;j:n] = house_row( A[j:m;j:n], v[j:m] );
  20.     if (j < m) 
  21.     {
  22.       A[ (j+1):m;j ] = v[(j+1):m];
  23.     }
  24.   }
  25.   return A;
  26. };
  27.